package org.jeecg.modules.demo.com.kunpeng.vo;

import java.util.List;
import org.jeecg.modules.demo.com.kunpeng.entity.PurchaseContract;
import org.jeecg.modules.demo.com.kunpeng.entity.PurchaseContractDetail;
import org.jeecg.modules.demo.com.kunpeng.entity.PurchaseContractCollectionPlan;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelEntity;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @Description: 采购合同表
 * @Author: jeecg-boot
 * @Date:   2022-12-23
 * @Version: V1.0
 */
@Data
@ApiModel(value="purchase_contractPage对象", description="采购合同表")
public class PurchaseContractPage {

	/**主键*/
	@ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**创建人*/
	@ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建日期")
    private java.util.Date createTime;
	/**更新人*/
	@ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**所属部门*/
	@ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
	/**序号*/
	@Excel(name = "序号", width = 15)
	@ApiModelProperty(value = "序号")
    private java.lang.String scid;
	/**关联客户供应商*/
	@Excel(name = "关联客户供应商", width = 15)
	@ApiModelProperty(value = "关联客户供应商")
    private java.lang.String supplierName;
	/**卖方*/
	@Excel(name = "卖方", width = 15)
	@ApiModelProperty(value = "卖方")
    private java.lang.String seller;
	/**合同开始时间*/
	@Excel(name = "合同开始时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "合同开始时间")
    private java.util.Date contractStartTime;
	/**合同结束时间*/
	@Excel(name = "合同结束时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "合同结束时间")
    private java.util.Date contractEndTime;
	/**合同名称*/
	@Excel(name = "合同名称", width = 15)
	@ApiModelProperty(value = "合同名称")
    private java.lang.String contractName;
	/**合同编号*/
	@Excel(name = "合同编号", width = 15)
	@ApiModelProperty(value = "合同编号")
    private java.lang.String contractId;
	/**合同性质*/
	@Excel(name = "合同性质", width = 15)
	@ApiModelProperty(value = "合同性质")
    private java.lang.String contractProperties;
	/**合同类别*/
	@Excel(name = "合同类别", width = 15)
	@ApiModelProperty(value = "合同类别")
    private java.lang.String contractType;
	/**保管人*/
	@Excel(name = "保管人", width = 15)
	@ApiModelProperty(value = "保管人")
    private java.lang.String managePerson;
	/**签订时间*/
	@Excel(name = "签订时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "签订时间")
    private java.util.Date signTime;
	/**合同金额*/
	@Excel(name = "合同金额", width = 15)
	@ApiModelProperty(value = "合同金额")
    private java.math.BigDecimal contractAmount;
	/**是否含税*/
	@Excel(name = "是否含税", width = 15)
	@ApiModelProperty(value = "是否含税")
    private java.lang.String istax;
	/**税点*/
	@Excel(name = "税点", width = 15)
	@ApiModelProperty(value = "税点")
    private java.lang.String taxPoint;
	/**收款人全称*/
	@Excel(name = "收款人全称", width = 15)
	@ApiModelProperty(value = "收款人全称")
    private java.lang.String fullNameOfPayee;
	/**税务登记账号*/
	@Excel(name = "税务登记账号", width = 15)
	@ApiModelProperty(value = "税务登记账号")
    private java.lang.String taxRegistrationAccountNo;
	/**收款人账号*/
	@Excel(name = "收款人账号", width = 15)
	@ApiModelProperty(value = "收款人账号")
    private java.lang.String collectionAccountNo;
	/**收款人开户行*/
	@Excel(name = "收款人开户行", width = 15)
	@ApiModelProperty(value = "收款人开户行")
    private java.lang.String bankOfDeposit;
	/**附件*/
	@Excel(name = "附件", width = 15)
	@ApiModelProperty(value = "附件")
    private java.lang.String enclosure;
	/**采购单号*/
	@Excel(name = "采购单号", width = 15)
	@ApiModelProperty(value = "采购单号")
	private java.lang.String purchaseId;

	@ExcelCollection(name="采购合同明细")
	@ApiModelProperty(value = "采购合同明细")
	private List<PurchaseContractDetail> purchaseContractDetailList;
	@ExcelCollection(name="采购合同收款计划")
	@ApiModelProperty(value = "采购合同收款计划")
	private List<PurchaseContractCollectionPlan> purchaseContractCollectionPlanList;

	@Excel(name = "联系人", width = 15)
	@ApiModelProperty(value = "联系人")
	private String customerContacts;
	@Excel(name = "联系电话", width = 15)
	@ApiModelProperty(value = "联系电话")
	private String customerTelephone;
	@Excel(name = "地址", width = 15)
	@ApiModelProperty(value = "地址")
	private String customerAddress;

}
